home *** CD-ROM | disk | FTP | other *** search
- function QLODKerningClass(kerning, autoSize, autoKern, targetName)
- {
- if(autoSize != undefined)
- {
- this.autoSizeToKern = autoSize;
- }
- if(autoKern != undefined)
- {
- this.autoKernToSize = autoKern;
- }
- if(targetName != undefined)
- {
- this._targetInstanceName = targetName;
- }
- if(kerning != undefined)
- {
- this.setKerning(kerning);
- }
- else
- {
- this.setKerning(this.kerning);
- }
- }
- o = QLODKerningClass.prototype = new MovieClip();
- Object.registerClass("QLODKerningComponentSymbol",QLODKerningClass);
- o.setKerning = function(kerning)
- {
- this.kerning = kerning;
- var _loc5_ = this._parent[this._targetInstanceName];
- if(_loc5_ == undefined)
- {
- trace("QLODKerningClass::update target not defined: " + this._targetInstanceName + "--------------- WARNING");
- return undefined;
- }
- if(!(_loc5_ instanceof TextField))
- {
- trace("QLODKerningClass::update target is not a TextField: " + _loc5_ + "--------------- WARNING");
- return undefined;
- }
- var _loc7_ = [];
- var _loc4_ = _loc5_.text;
- var _loc6_ = null;
- var _loc2_ = 0;
- var _loc3_ = "";
- var _loc8_ = null;
- var _loc11_ = 0;
- var _loc9_ = "";
- _loc2_ = 0;
- while(_loc2_ < _loc4_.length)
- {
- _loc3_ = _loc4_.charAt(_loc2_);
- if(_loc3_ >= " ")
- {
- _loc9_ += _loc3_;
- }
- _loc2_ = _loc2_ + 1;
- }
- _loc4_ = _loc9_;
- _loc9_ = "";
- kerning = this.kerning;
- trace("kerning:" + kerning);
- if(isNan(kerning))
- {
- kerning = 2;
- }
- else if(kerning < 2)
- {
- kerning = 0;
- }
- _loc2_ = 0;
- while(_loc2_ < _loc4_.length)
- {
- _loc3_ = _loc4_.charAt(_loc2_);
- _loc6_ = _loc5_.getTextFormat(_loc2_);
- _loc8_ = _loc6_.getTextExtent(_loc3_);
- _loc11_ += _loc8_.width;
- _loc7_.push(_loc8_.width);
- _loc9_ += _loc3_ + "\t";
- _loc2_ = _loc2_ + 1;
- }
- if(this.autoKernToSize)
- {
- delete _loc5_.autoSize;
- kerning = Math.max(Math.floor((_loc5_._width - _loc11_) / _loc4_.length),kerning);
- }
- else if(this.autoSizeToKern)
- {
- _loc5_.autoSize = "left";
- }
- if(kerning == 0)
- {
- _loc6_ = _loc5_.getTextFormat();
- _loc5_.text = _loc4_;
- _loc6_.tabStops = [];
- _loc5_.setTextFormat(_loc6_);
- }
- else
- {
- _loc11_ = 0;
- var _loc12_ = [];
- _loc2_ = 0;
- while(_loc2_ < _loc7_.length)
- {
- _loc12_[_loc2_] = _loc11_;
- _loc11_ += _loc7_[_loc2_] + kerning;
- _loc2_ = _loc2_ + 1;
- }
- _loc5_.text = _loc9_;
- _loc6_ = _loc5_.getTextFormat();
- _loc6_.tabStops = _loc12_;
- _loc5_.setTextFormat(_loc6_);
- }
- };
- delete o;
-